#ifndef CUIFACTORY_H_
#define CUIFACTORY_H_

class CBaseUIObject;

class CUIFactory
{
public:

	enum m_eUIObjectType{FRAME = 1, BUTTON, BAR, SCROLL_BAR, WINDOW, TITLE, MAX_TYPES};

private:

	CUIFactory();
	~CUIFactory();
	CUIFactory(const CUIFactory&);
	CUIFactory& operator=(const CUIFactory&);


public:

	static CUIFactory* GetInstance();

	void StartUp();
	void ShutDown();

	CBaseUIObject* CreateUIElement(m_eUIObjectType eType, bool bIsMovable);


};

#endif